'''
房子（House）有户型、总面积、家具名称列表；新房子没有任何的家具 
家具（HouseItem）有名字、占地面积
席梦思（bed） 占地 4 平米
衣柜（bed） 占地 2 平米
餐桌（bed） 占地 1.5 平米
将以上三个家具添加到房子中
打印房子时，要求输出：户型、总面积、剩余面积、家具名称列表
'''

class House(object):
    def __init__(self,type,total_area,left_area=None,item=None) -> None:
        if item is None:
            item = []

        self.type = type
        self.total_area = total_area

        if left_area is None:
            self.left_area = self.total_area

        self.item = item

    def Add_houseitem(self,item):
        #print('家具名称是{},家具面积是{}'.format(item.name,item.item_area))
        if(self.left_area < item.item_area):
            #print('房间已满')
            return
        else:
            self.item.append(item.name)
            self.left_area = self.left_area - item.item_area

    def Print_house(self):
        
        print("户型是{},总面积{}，剩余面积{},家具有{}".format(self.type,self.total_area,self.left_area,self.item))

class  HouseItem(object):
    def __init__(self,name,item_area) -> None:
        self.name = name
        self.item_area = item_area

house1 = House('一室一厅',10)
Simmons = HouseItem('席梦思',4)
wardrobe = HouseItem('衣柜',2)
board = HouseItem('餐桌',1.5)

house1.Add_houseitem(Simmons)
house1.Add_houseitem(board)
house1.Add_houseitem(wardrobe)

house1.Print_house()      